package com.eeds.model.project.req;

import com.eeds.common.model.ReqUserId;
import com.eeds.model.project.res.ResFileInfoVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

@Data
@ApiModel("添加供电方案请求参数")
@EqualsAndHashCode(callSuper =false)
public class ReqAddPowerSupplySchemeVO extends ReqUserId {


    @ApiModelProperty(value = "项目id")
    @NotNull(message = "项目id不能为空")
    private Long idProAdmin;


    /**
     * 客户类型
     */
    @ApiModelProperty(value="客户类型")
    private String customerType;
    /**
     * 方案类型
     */
    @ApiModelProperty(value="方案类型")
    private String programmeType;
    /**
     * 工单编号
     */
    @ApiModelProperty(value="工单编号")
    private String workOrderNumber;
    /**
     * 客户分级
     */
    @ApiModelProperty(value="客户分级")
    private String customerLevel;
    /**
     * 行业类别
     */
    @ApiModelProperty(value="行业类别")
    private String industryType;
    /**
     * 负荷类型
     */
    @ApiModelProperty(value="负荷类型")
    private String loadType;
    /**
     * 供电电压
     */
    @ApiModelProperty(value="供电电压")
    private String powerSupplyVoltage;
    /**
     * 线路敷设
     */
    @ApiModelProperty(value="线路敷设")
    private String layingLines;
    /**
     * 工程类别
     */
    @ApiModelProperty(value="工程类别")
    private String engineeringType;
    /**
     * 是否设计
     */
    @ApiModelProperty(value="是否设计")
    private Integer isDesign;
    /**
     * 用电类型
     */
    @ApiModelProperty(value="用电类型")
    private String electricityType;
    /**
     * 计量方式
     */
    @ApiModelProperty(value="计量方式")
    private String meteringType;
    /**
     * 计算变损
     */
    @ApiModelProperty(value="计算变损")
    private String calculationLoss;
    /**
     * 计算线损
     */
    @ApiModelProperty(value="计算线损")
    private String calculationLineLoss;
    /**
     * 采控配置
     */
    @ApiModelProperty(value="采控配置")
    private String productionControl;
    /**
     * 运行管理单位
     */
    @ApiModelProperty(value="运行管理单位")
    private String operatingUnit;
    /**
     * 是否涉及变电站增容，改扩建，占用出线间隔
     */
    @ApiModelProperty(value="是否涉及变电站增容，改扩建，占用出线间隔")
    private String addUpdateOccupy;
    /**
     * 高可靠收费标准
     */
    @ApiModelProperty(value="高可靠收费标准")
    private String hFeeStandard;
    /**
     * 高可靠收取容量
     */
    @ApiModelProperty(value="高可靠收取容量")
    private String hCollectionCapacity;
    /**
     * 高可靠应收金额
     */
    @ApiModelProperty(value="高可靠应收金额")
    private String hAmountReceivable;
    /**
     * 勘查人员
     */
    @ApiModelProperty(value="勘查人员")
    private String explorers;
    /**
     * 申请书提交日期
     */
    @ApiModelProperty(value="申请书提交日期")
    private Date applicationSubmitTime;
    /**
     * 提交方式  1：正式    2：临时
     */
    @ApiModelProperty(value="提交方式  1：正式    2：临时")
    private Integer applicationSubmitType;
    /**
     * 提交申请书原因
     */
    @ApiModelProperty(value="提交申请书原因")
    private String applicationSubmitExplain;
    /**
     * 客户服务经理
     */
    @ApiModelProperty(value="客户服务经理")
    private String customerManager;
    /**
     * 客户服务工程师
     */
    @ApiModelProperty(value="客户服务工程师")
    private String customerEngineer;
    /**
     * 供电方案简图
     */
    @ApiModelProperty(value="供电方案简图")
    private Long powerSupplyDiagram;
    /**
     * 最终版供电方案上传
     */
    @ApiModelProperty(value="最终版供电方案上传")
    private Long powerSupplyFinal;
    /**
     * 用户状态0 - 停用1 - 启用2 - 出现违规情况而被停用
     */
    @ApiModelProperty(value="用户状态0 - 停用1 - 启用2 - 出现违规情况而被停用")
    private Integer status;
    /**
     * 附件图片
     */
    @ApiModelProperty(value="附件图片")
    private Long enclosureFile;

    /**
     * 执行电价列表
     */
    @ApiModelProperty(value = "执行电价列表")
    private List<ReqProPowerSupplySchemeElectricityPriceAssVO> proPowerSupplySchemeElectricityPriceList;

    /**
     * 供电方案计量点列表
     */
    @ApiModelProperty(value = "供电方案计量点列表")
    private List<ReqProPowerSupplySchemeMeteringAssVO> proPowerSupplySchemeMeteringList;

    /**
     * 供电方案电源列表
     */
    @ApiModelProperty(value = "供电方案电源列表")
    private List<ReqProPowerSupplySchemePowerAssVO> proPowerSupplySchemePowerAssList;



    /**
     * 提交状态  1：保存  2：预提交   3：提交
     */
    @ApiModelProperty(value="提交状态  1：保存  2：预提交   3：提交")
    private Integer submitState;




}
